GPT4All:在您的笔记本电脑上运行开源ChatGPT克隆
在 ChatGPT 输出上训练的开源聊天机器人
摄影:Emiliano Vittoriosi on Unsplash
介绍
事件正在迅速展开,新的大型语言模型(LLM)正在以越来越快的速度开发。就在最近几个月,我们有了颠覆性的ChatGPT,现在是GPT-4。为了澄清定义,GPT 代表(生成预训练转换器),是底层语言模型,而 ChatGPT 是为对话而设计的特定实现。比尔·盖茨(Bill Gates)回顾了OpenAI的工作,他说:“人工智能时代已经开始”。如果您觉得很难跟上快速变化的步伐,那么您并不孤单。刚刚,超过1名研究人员签署了一份请愿书,要求在未来六个月内暂停训练比GPT-4更强大的AI系统。
虽然技术成就令人瞩目,但它们仍然处于闭门状态。尽管它的名字,OpenAI长期以来一直受到一些人的批评,因为他们没有发布他们的模型,甚至被一些人称为ClosedAI。研究人员和爱好者都在努力寻找开源替代方案。
如果你错过了最近的发展,你应该看看Meta的LLaMA(https://github.com/facebookresearch/llama),它应该比GPT-3更好。它是在GNU许可证下许可的,虽然它不是严格开源的,但您可以在注册后获得权重。这种开放性显然是为了LLaMA的利益,以便社区能够迅速继续开发它。它很快以 llama.cpp 的形式被移植到C / C++,斯坦福大学的研究人员将其扩展到类ChatGPT的指令遵循模型,并将其命名为Alpaca。还有GPT4All,这篇博文是关于它的。我将很快介绍它,最后,您将看到如何在本地运行它以及期望什么。
但首先,让我们看一看社区中一个开放版本的大模型的发展会有多快。为了从中了解这些技术的变革性,以下是各个 GitHub 存储库的 GitHub 星级(衡量受欢迎程度的指标)的数量。作为参考,流行的PyTorch框架在六年内收集了大约65k颗星。下图约为一个月。
GPT4All、llama.cpp和alpaca的明星历史,从 2023.3.9 至今。实时图表链接:https://star-history.com/#nomic-ai/gpt4all&tatsu-lab/stanford_alpaca&ggerganov/llama.cpp&facebookresearch/llama&Date
GPT4ALL
但是现在,让我们更深入地介绍 GPT4All。这是Nomic AI的助手式聊天机器人,刚刚公开发布。
如何基于现有的语言模型(如LLaMA)创建像ChatGPT这样的助手式聊天机器人?答案可能会让您感到惊讶:您与聊天机器人互动并尝试学习其行为。就 gpt4all 而言,这意味着从公开可用的数据源中收集各种问题和提示样本,然后将它们交给 ChatGPT(更具体地说是 GPT-3.5-Turbo),以生成 806199 个高质量的提示生成对。接下来,整理数据并删除低多样性响应,并确保数据涵盖广泛的主题。训练数据,他们发现他们的模型比下一代模型性能更好。
对我来说,这样做的主要吸引力之一是作者发布了该模型的量化 4 位版本。这是什么意思?实际上,您在模型中执行某些操作时精度降低,而不是全精度,因此可以具有更紧凑的模型。像ChatGPT这样型号的模型需要在专用硬件上运行,例如Nvidia的A100,这是一款具有高达80 GB内存的硬件野兽,价格为15k 美元,但GPT4All可以在消费级硬件上执行该模型。现在,让我们开始运行自己的:
设置
运行 GPT4All 的说明很简单,只要您有一个可运行的 Python 安装。只需按照 GitHub 存储库(https://github.com/nomic-ai/gpt4all)上的设置上的说明进行操作即可。
下载量化检查点(请参阅自己试用)。有 4.2 Gb 大小,我以 1.4 Mb/s 的速度下载了它,所以这花了一段时间
克隆环境
将检查点复制到chat
设置环境并安装依赖
运行
我在 M1 MacBook Pro 上对此进行了测试,这意味着只需导航到 chat-文件夹并执行
./gpt4all-lora-quantized-OSX-m1
GPT4All 在 M1 Mac 上运行
设置所有内容只需几分钟。就我而言,下载是最慢的部分。在我的机器上,结果是实时返回的。
结果
现在,GPT4All 的即用型量化模型在基准测试后表现如何?虽然有详细的基准集,但以下是一些关于您可以期待的内容的快速见解:
关于博客文章的对话。
虽然有一些明显的错误(NLP-> NLU),但我实际上对输出感到非常惊讶。
让我们尝试一些更有创意的东西,比如诗歌:
深夜诗歌。
我发现这确实非常有用 - 再次考虑到这是在MacBook Pro笔记本电脑上运行的。虽然它可能达不到 GPT-3.5 甚至 GPT-4 的级别,但它肯定有一些魔力。
关于使用注意事项的一句话
使用 GPT4All 时,应牢记作者的使用注意事项:
“GPT4ALL模型的权重和数据仅用于研究目的,并获得许可,禁止任何商业用途。GPT4All 基于 LLaMA,后者具有非商业许可证。助手数据生成于 OpenAI的GPT-3.5-Turbo,其使用条款禁止开发与OpenAI进行商业竞争的模型。
另外,请注意,ChatGPT 具有多种安全功能。
讨论
开源项目和社区的努力在实施技术和加速想法方面可以非常强大。GPT4All就是一个显著的体现。从根本上说,我认为这为闭源模型的业务方面提供了一个有趣的视角。如果您提供 AI 即服务,那么爱好者需要多长时间才能探测您的 AI 足够长的时间以便能够模仿它?对于GPT4All的案例,他们的论文中有一个有趣的注释:他们花了四天的工作,800美元的GPU成本和500美元的OpenAI API调用。这绝对是非同寻常的。
这就提出了闭源模型的可行性问题。主动开放,让社区参与进来,并监督其发展不是更好吗?
除此之外,我们今天还更新了一篇《如何让 ChatGPT 画出复杂的图表?》放在了“AI聊天机器人俱乐部”中,欢迎大家加入俱乐部,查看文章: